home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 2 / Apprentice-Release2.iso / Tools / MPW / GCC 1.37.1r15 / Machines / tm-next.h < prev    next >
Encoding:
C/C++ Source or Header  |  1990-03-14  |  2.7 KB  |  97 lines  |  [TEXT/MPS ]

  1. /* tm-next.h:  Definitions for Next as target machine for GNU C compiler.  */
  2.  
  3. #include "tm-m68k.h"
  4.  
  5. /* Enable recent gcc to compile under the old gcc in Next release 1.0.  */
  6. #define __inline inline
  7.  
  8. /* See tm-m68k.h.  7 means 68020/030 with 68881/882.  */
  9.  
  10. #define TARGET_DEFAULT 7
  11.  
  12. /* These compiler options take an argument.  */
  13.  
  14. #define WORD_SWITCH_TAKES_ARG(STR)    \
  15.   (!strcmp (STR, "Ttext") || !strcmp (STR, "Tdata"))
  16.  
  17. /* Names to predefine in the preprocessor for this target machine.  */
  18.  
  19. #define CPP_PREDEFINES "-Dmc68000 -DNeXT -Dunix -D__MACH__"
  20.  
  21. /* Machine dependent ccp options.  */
  22.  
  23. #define CPP_SPEC "%{bsd:-D__STRICT_BSD__}"
  24.  
  25. /* Machine dependent ld options.  */
  26.  
  27. #define LINK_SPEC "%{Z} %{M} %{Mach} %{segcreate*} %{seglinkedit}"
  28.  
  29. /* Machine dependent libraries.  */
  30.  
  31. #define LIB_SPEC "%{!p:%{!pg:-lc}}%{p:-lsys_p}%{pg:-lsys_p}"
  32.  
  33. /* We specify crt0.o as -lcrt0.o so that ld will search the library path. */
  34. #define STARTFILE_SPEC  \
  35.   "%{pg:-lgcrt0.o}%{!pg:%{p:-lmcrt0.o}%{!p:-lcrt0.o}}"
  36.  
  37. /* Every structure or union's size must be a multiple of 2 bytes.  */
  38.  
  39. #define STRUCTURE_SIZE_BOUNDARY 16
  40.  
  41. /* We want C++ style comments to be supported for Objective-C */
  42.  
  43. #define CPLUSPLUS
  44.  
  45. /* Why not? */
  46.  
  47. #define DOLLARS_IN_IDENTIFIERS 1
  48.  
  49. #if 0 /* These pertain to code changes that are not present in 1.36.  */
  50.  
  51. /* Allow Mach -MD and -MMD make depend switches. */
  52.  
  53. #define MACH_MAKE_DEPEND
  54.  
  55. /* These options take an argument.  Note that we don't support -Ttext or -Tdata.  */
  56.  
  57. #define WORD_SWITCH_TAKES_ARG(STR) (!strcmp (STR, "MD") || !strcmp (STR,  
  58. "MMD"))
  59.  
  60. #endif /* 0 */
  61.  
  62. /* Allow #sscs (but don't do anything). */
  63.  
  64. #define SCCS_DIRECTIVE
  65.  
  66. /* We use Dbx symbol format.  */
  67.  
  68. #define DBX_DEBUGGING_INFO
  69.  
  70. /* This is how to output an assembler line defining a `double' constant.  */
  71.  
  72. #undef ASM_OUTPUT_DOUBLE
  73. #define ASM_OUTPUT_DOUBLE(FILE,VALUE)                    \
  74.   (isinf ((VALUE))                            \
  75.    ? fprintf (FILE, "\t.double 0r%s99e999\n", ((VALUE) > 0 ? "" : "-")) \
  76.    : fprintf (FILE, "\t.double 0r%.20e\n", (VALUE)))
  77.  
  78. /* This is how to output an assembler line defining a `float' constant.  */
  79.  
  80. #undef ASM_OUTPUT_FLOAT
  81. #define ASM_OUTPUT_FLOAT(FILE,VALUE)                    \
  82.   (isinf ((VALUE))                            \
  83.    ? fprintf (FILE, "\t.single 0r%s99e999\n", ((VALUE) > 0 ? "" : "-")) \
  84.    : fprintf (FILE, "\t.single 0r%.20e\n", (VALUE)))
  85.  
  86. #undef ASM_OUTPUT_FLOAT_OPERAND
  87. #define ASM_OUTPUT_FLOAT_OPERAND(FILE,VALUE)                \
  88.   (isinf ((VALUE))                            \
  89.    ? fprintf (FILE, "#0r%s99e999", ((VALUE) > 0 ? "" : "-")) \
  90.    : fprintf (FILE, "#0r%.9g", (VALUE)))
  91.  
  92. #undef ASM_OUTPUT_DOUBLE_OPERAND
  93. #define ASM_OUTPUT_DOUBLE_OPERAND(FILE,VALUE)                \
  94.   (isinf ((VALUE))                            \
  95.    ? fprintf (FILE, "#0r%s99e999", ((VALUE) > 0 ? "" : "-")) \
  96.    : fprintf (FILE, "#0r%.20g", (VALUE)))
  97.